package com.emmmya.ocs.modules.system.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.emmmya.ocs.common.base.BaseEntity;
import lombok.Data;
import lombok.ToString;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;

/**
 * @description:
 * @author: 咕噜肉IT小店-黑医
 * @createDate: 2020-12-11
 * @version: 1.0
 */
@Data
@Entity
@TableName("sys_log")
@Table(name="sys_log")
@ToString
public class SysLog extends BaseEntity {
    @Column(name="log_type")
    private Integer logType;     //登录日志，操作日志

    @Column(name="log_content")
    private String logContent;  //日志内容

    @Column(name="operate_type")
    private Integer operateType; //操作类型 1-查询 2-添加 3-更新 4-删除 5-导入 6-导出

    @Column(name="module")
    private String module;  //模块

    @Column(name="user_id")
    private Long userId;      //请求用户ID

    @Column(name="username")
    private String username;    //请求用户名

    @Column(name="ip")
    private String ip;

    @Column(name="method")
    private String method;      //请求的java方法

    @Column(name="request_type")
    private String requestType; //请求方式

    @Column(name="request_url")
    private String requestUrl;  //请求url

    @Column(name="request_param",columnDefinition = "varchar(2000)")
    private String requestParam;//请求参数

    @Column(name="cost_time")
    private Long CostTime;      //耗时

    @Column(name="response_code")
    private Integer responseCode;    //http响应码

    @Column(name ="result")
    private String result;      //系统处理结果，只有返回json，并使用Result<T>封装结果时才会记录

    @Column(name = "os")
    private String os;          //用户访问使用的系统

    @Column(name = "browser")
    private String browser;     //用户访问使用的浏览器

}
